const tokenRequest = function(opts, data) {
	const sessionKey = uni.getStorageSync('sessionKey');
	//此myToken是登录成功后后台返回保存在storage中的
	let DefaultOpts = {
		url: this.baseUrl + opts.url,
		data: data,
		method: opts.method,
		header: opts.method == 'get' ? {
			'sessionKey': sessionKey,
			'X-Requested-With': 'XMLHttpRequest',
			"Accept": "application/json",
			"Content-Type": "application/json; charset=UTF-8"
		} : {
			'sessionKey': sessionKey,
			'X-Requested-With': 'XMLHttpRequest',
			'Content-Type': 'application/json; charset=UTF-8'
		},
		dataType: 'json',
	}
	uni.showLoading({
		mask: true,
		title: '加载中...'
	});
	let promise = new Promise(function(resolve, reject) {
		uni.request(DefaultOpts).then(
			(res) => {
				let rData = JSON.stringify(res[1].data);
				rData = JSON.parse(rData);
				if (rData.code == '200' || rData.code == 200) {//正常情况的路径
					// 后端返回的状态码200为成功状态,成功则返回请求结果,在app调试时可以通过console.log(JSON.stringify(res[1].data))来查看返回值（以项目实际情况为准）
					resolve(rData)
				} else if (rData.code == '500' || rData.code == 500) {//做为非正常情况的提示路径
					// 后端返回状态码为105则为未登录状态（以项目实际情况为准）
					uni.showToast({
						icon: 'none',
						title: rData.msg,
						duration: 2000
					});
					// 其他逻辑处理
					return false
				} else if (rData.code == '501' || rData.code == 501) { //sessionkey不存在情况的路径
					uni.showToast({
						icon: 'none',
						title: rData.msg,
						duration: 2000
					});
					// this.VerifyLogin(null);//验证登录
					setTimeout(function() {
						wx.switchTab({
							url: '/pages/index/index'
						})
					}, 2000)
				}
				uni.hideLoading();
			}
		).catch(
			(response) => {
				reject(response)
			}
		)
	})
	return promise
}

export default tokenRequest;
